package ru.javadevelop.vegetarian.background;

import android.content.Context;
import android.content.res.AssetFileDescriptor;
import android.graphics.LightingColorFilter;
import android.media.MediaPlayer;
import android.os.PowerManager;
import android.util.Log;
import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.DefaultHttpClient;
import org.joda.time.DateTime;
import org.joda.time.DateTimeZone;
import org.json.JSONArray;
import org.json.JSONObject;
import ru.javadevelop.vegetarian.R;
import ru.javadevelop.vegetarian.common.AppPreferences;
import ru.javadevelop.vegetarian.common.ExtApplication;
import ru.javadevelop.vegetarian.common.StringUtils;

import java.io.IOException;
import java.io.InputStream;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.Random;

/**
 * Поток, который отвечает за непостердственное проигрывание звуков
 */
public class SyncThread extends Thread {
    private Context _context;
    private static final String TAG = "SyncTread";
    //******************************************************************************************************************
    public SyncThread(Context context) {
        this._context = context;
    }
    //******************************************************************************************************************
    @Override
    public void run() {
        try {
            // Проигрываем только, если поток жив и только, если в настройках стоит «Включено».
            while ( !isInterrupted() )
            {
                // устанавливаем время пауз синхронизации в 2 часа (в милисекундах)
                //int timeToSleep = 1*60*60*1000;
                int timeToSleep = 5*60*1000;
                //  Тут самые главные действия!!!!
                Syncer syncer = new Syncer(_context);
                syncer.syncCategories();
                syncer.syncRecipes();
                syncer.syncImages();
                syncer.syncFavorites();
                DateTime date = new DateTime(System.currentTimeMillis(), DateTimeZone.UTC);
                AppPreferences.LAST_SYNC_DATE.set(String.valueOf(System.currentTimeMillis()));
                Thread.sleep(timeToSleep);

                // после того, как поток проспал заданное время, проигрываем музыку
            }
        } catch (Exception e) {
            // Stopping - ignore
        } finally {
            // в любом случае даём возможность потоку отдать ресурсы и не жрать батарею
        }

    }
    //******************************************************************************************************************


}
